package com.sinothk.fc.storeOrder.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sinothk.fc.goods.entity.GoodsDO;
import com.sinothk.fc.goodsStock.entity.GoodsStockEntity;
import com.sinothk.fc.storeOrder.entity.OrderAddReq;
import com.sinothk.fc.storeOrder.entity.StoreOrderEntity;
import com.sinothk.fc.storeOrder.entity.StoreOrderSearchReq;
import com.sinothk.fc.storeOrderDetail.entity.StoreOrderDetailEntity;

/**
 * @Description: 门店订单表
 * @Author: Liangyt
 * @Date:   2022-09-14
 * @Version: V1.0
 */
public interface IStoreOrderService extends IService<StoreOrderEntity> {

    void addPayInfoForSale(OrderAddReq<StoreOrderDetailEntity> beanReq) throws Exception;

    IPage<StoreOrderEntity> listForStore(Page<StoreOrderEntity> storeOrderEntityPage, StoreOrderSearchReq searchReq) throws Exception;

    void storeOrderRemove(String storeRecordId) throws Exception;

    void storeOrderForBuy(OrderAddReq<GoodsStockEntity> beanReq) throws Exception;

    void addSaleOrder(OrderAddReq<GoodsDO> addReq) throws Exception;

    IPage<StoreOrderEntity> pageForStoreGroupByOrderId(Page<StoreOrderEntity> page, StoreOrderSearchReq searchReq) throws Exception;

}
